home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / include / python2.4 / boolobject.h < prev    next >
Encoding:
C/C++ Source or Header  |  2005-10-18  |  914 b   |  37 lines

  1. /* Boolean object interface */
  2.  
  3. #ifndef Py_BOOLOBJECT_H
  4. #define Py_BOOLOBJECT_H
  5. #ifdef __cplusplus
  6. extern "C" {
  7. #endif
  8.  
  9.  
  10. typedef PyIntObject PyBoolObject;
  11.  
  12. PyAPI_DATA(PyTypeObject) PyBool_Type;
  13.  
  14. #define PyBool_Check(x) ((x)->ob_type == &PyBool_Type)
  15.  
  16. /* Py_False and Py_True are the only two bools in existence.
  17. Don't forget to apply Py_INCREF() when returning either!!! */
  18.  
  19. /* Don't use these directly */
  20. PyAPI_DATA(PyIntObject) _Py_ZeroStruct, _Py_TrueStruct;
  21.  
  22. /* Use these macros */
  23. #define Py_False ((PyObject *) &_Py_ZeroStruct)
  24. #define Py_True ((PyObject *) &_Py_TrueStruct)
  25.  
  26. /* Macros for returning Py_True or Py_False, respectively */
  27. #define Py_RETURN_TRUE return Py_INCREF(Py_True), Py_True
  28. #define Py_RETURN_FALSE return Py_INCREF(Py_False), Py_False
  29.  
  30. /* Function to return a bool from a C long */
  31. PyAPI_FUNC(PyObject *) PyBool_FromLong(long);
  32.  
  33. #ifdef __cplusplus
  34. }
  35. #endif
  36. #endif /* !Py_BOOLOBJECT_H */
  37.